home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Dr. Windows 3
/
dr win3.zip
/
dr win3
/
UTILITY1
/
MSWSRC35.ZIP
/
CLASS.H
< prev
next >
Wrap
C/C++ Source or Header
|
1993-10-07
|
13KB
|
515 lines
typedef struct
{
POINT from;
POINT to;
} LINEX;
typedef struct
{
HBITMAP CutMemoryBitMap; /* Used to store cut and paste */
int CutHeight; /* current cut height */
int CutWidth; /* current cut width */
long CutFlag; /* flag to signal something in cut buffer */
} CUTMAP;
class TMyFileWindow : public TxFileWindow
{
NODE *args_list;
public:
HGLOBAL hEditHeap;
TMyFileWindow(PTWindowsObject, LPSTR, LPSTR, NODE *);
~TMyFileWindow();
virtual BOOL CanClose();
virtual void DefWndProc(RTMessage Msg);
virtual void ContextHelp();
virtual void CMExit(RTMessage Msg)
= [CM_FIRST + CM_EXIT];
virtual void CMHelpEdit(RTMessage Msg)
= [CM_FIRST + CM_HELPEDIT];
virtual void CMHelpEditTopic(RTMessage Msg)
= [CM_FIRST + CM_HELPEDIT_TOPIC];
virtual void CMTest(RTMessage Msg)
= [CM_FIRST + CM_TEST];
};
class TMyEditboxWindow : public TEdit
{
public:
TMyEditboxWindow(PTWindowsObject, int, WORD);
~TMyEditboxWindow();
virtual void WMKeyDown(RTMessage Msg)
= [WM_FIRST + WM_KEYDOWN];
virtual void WMGetDlgCode(RTMessage Msg)
= [WM_FIRST + WM_GETDLGCODE];
};
class TMyListboxWindow : public TListBox
{
public:
TMyListboxWindow(PTWindowsObject, int);
~TMyListboxWindow();
virtual void WMKeyDown(RTMessage Msg)
= [WM_FIRST + WM_KEYDOWN];
virtual void WMGetDlgCode(RTMessage Msg)
= [WM_FIRST + WM_GETDLGCODE];
};
class TMyCommandWindow : public TDialog
{
public:
TMyCommandWindow(PTWindowsObject, LPSTR);
~TMyCommandWindow();
virtual void GetWindowClass(WNDCLASS& WndClass);
virtual void DefWndProc(RTMessage Msg);
virtual void WMSize(RTMessage Msg)
= [WM_FIRST + WM_SIZE];
virtual void DoListBox(RTMessage Msg)
= [ID_FIRST + ID_LISTBOX];
virtual void DoEditBox(RTMessage Msg)
= [ID_FIRST + ID_EDITINPUT];
virtual void DoButtonExecute(RTMessage Msg)
= [ID_FIRST + ID_EXECUTE];
virtual void DoButtonHalt(RTMessage Msg)
= [ID_FIRST + ID_HALT];
virtual void DoButtonStatus(RTMessage Msg)
= [ID_FIRST + ID_STATUS];
virtual void DoButtonYield(RTMessage Msg)
= [ID_FIRST + ID_YIELD];
virtual void DoButtonPause(RTMessage Msg)
= [ID_FIRST + ID_PAUSE];
virtual void DoButtonTrace(RTMessage Msg)
= [ID_FIRST + ID_TRACE];
virtual void DoButtonReset(RTMessage Msg)
= [ID_FIRST + ID_RESET];
};
class TMyStatusWindow : public TDialog
{
public:
TMyStatusWindow(PTWindowsObject, LPSTR);
~TMyStatusWindow();
};
class TMyPrinterAreaWindow : public TDialog
{
public:
TMyPrinterAreaWindow(PTWindowsObject, LPSTR);
~TMyPrinterAreaWindow();
virtual void WMInitDialog(RTMessage Msg)
= [WM_FIRST + WM_INITDIALOG];
virtual void DoXLow(RTMessage Msg)
= [ID_FIRST + ID_XLOW];
virtual void DoXHigh(RTMessage Msg)
= [ID_FIRST + ID_XHIGH];
virtual void DoYLow(RTMessage Msg)
= [ID_FIRST + ID_YLOW];
virtual void DoYHigh(RTMessage Msg)
= [ID_FIRST + ID_YHIGH];
virtual void DoFullImage(RTMessage Msg)
= [ID_FIRST + ID_FULLIMAGE];
virtual void DoCustomImage(RTMessage Msg)
= [ID_FIRST + ID_CUSTOMIMAGE];
};
class TMyFileEditWindow : public TDialog
{
public:
int FileEditAll;
TMyFileEditWindow(PTWindowsObject, LPSTR);
~TMyFileEditWindow();
virtual BOOL CanClose();
// virtual void DefWndProc(RTMessage Msg);
virtual void WMInitDialog(RTMessage Msg)
= [WM_FIRST + WM_INITDIALOG];
virtual void DoAll(RTMessage Msg)
= [ID_FIRST + ID_FILEEDITALL];
virtual void DoCombo(RTMessage Msg)
= [ID_FIRST + ID_FILEEDITCOMBO];
};
class TMyApp : public TApplication
{
public:
HDC TempDC;
RECT RR;
TMyApp(LPSTR AName, HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow)
: TApplication(AName, hInstance, hPrevInstance, lpCmdLine, nCmdShow) {};
virtual void InitMainWindow();
virtual void InitInstance();
virtual void IdleAction();
virtual BOOL TMyApp::ProcessAppMsg(LPMSG msg);
};
_CLASSDEF(TMyWindow)
class TMyWindow : public TWindow
{
public:
PTPrinter Printer; // Pointer to a TPrinter object
// HBITMAP BitmapHandle;
WORD bitCount;
WORD size;
BITMAPINFO *BitmapInfo;
TMyFileWindow *EditWindow;
PTDialog CommandWindow;
TMyEditboxWindow *EditboxWindow;
TMyListboxWindow *ListboxWindow;
PTDialog StatusWindow;
PTDialog PrinterAreaWindow;
HICON HIcon;
TMyFileEditWindow *FileEditWindow;
DLGPROC lpProcAbout;
HDC ScreenDC;
HDC MemDC;
HDC PrintMemDC;
RECT R;
RECT RR;
long ii;
int PenSize;
char FileName[MAXPATH];
char BitmapName[MAXPATH];
BOOL IsNewFile;
BOOL IsNewBitmap;
TMyWindow(PTWindowsObject AParent, LPSTR ATitle);
~TMyWindow();
void MyPopupEdit(char *FileName,NODE *args);
void MyPopupCommander();
void MyPopupStatus();
void MyPopupStatusKill();
int MyPopupInput(char *str,char *pmt);
BOOL LoadBitmapFile(LPSTR);
BOOL OpenDIB(int);
void GetBitmapData(int TheFile, HANDLE, long);
BOOL DumpBitmapFile(LPSTR);
BOOL WriteDIB(int TheFile);
void PutBitmapData(int TheFile, HANDLE, long);
virtual BOOL CanClose();
virtual void GetWindowClass(WNDCLASS& WndClass);
virtual void Paint(HDC DC, PAINTSTRUCT& PS);
virtual void Printit(HDC DC);
virtual void SaveFile();
virtual void SaveFileAs();
virtual void SaveBitmap();
virtual void SaveBitmapAs();
virtual void SetupWindow();
virtual void WMKeyDown(RTMessage Msg)
= [WM_FIRST + WM_KEYDOWN];
virtual void WMKeyUp(RTMessage Msg)
= [WM_FIRST + WM_KEYUP];
virtual void WMChar(RTMessage Msg)
= [WM_FIRST + WM_CHAR];
virtual void WMGetDlgCode(RTMessage Msg)
= [WM_FIRST + WM_GETDLGCODE];
virtual void WMLButtonDown(RTMessage Msg)
= [WM_FIRST + WM_LBUTTONDOWN];
virtual void WMLButtonUp(RTMessage Msg)
= [WM_FIRST + WM_LBUTTONUP];
virtual void WMRButtonDown(RTMessage Msg)
= [WM_FIRST + WM_RBUTTONDOWN];
virtual void WMRButtonUp(RTMessage Msg)
= [WM_FIRST + WM_RBUTTONUP];
virtual void WMMouseMove(RTMessage Msg)
= [WM_FIRST + WM_MOUSEMOVE];
#ifdef ISWIN31
virtual void MMMCINotify(RTMessage Msg)
= [WM_FIRST + MM_MCINOTIFY];
#endif
virtual void WMTIMER(RTMessage Msg)
= [WM_FIRST + WM_TIMER];
virtual void CMFileNew(RTMessage Msg)
= [CM_FIRST + CM_FILENEW];
virtual void CMFileOpen(RTMessage Msg)
= [CM_FIRST + CM_FILEOPEN];
virtual void CMFileSave(RTMessage Msg)
= [CM_FIRST + CM_FILESAVE];
virtual void CMFileSaveAs(RTMessage Msg)
= [CM_FIRST + CM_FILESAVEAS];
virtual void CMFileEdit(RTMessage Msg)
= [CM_FIRST + CM_FILEEDIT];
virtual void CMFileErase(RTMessage Msg)
= [CM_FIRST + CM_FILEERASE];
virtual void CMExit(RTMessage Msg)
= [CM_FIRST + CM_EXIT];
virtual void CMBitmapNew(RTMessage Msg)
= [CM_FIRST + CM_BITMAPNEW];
virtual void CMBitmapOpen(RTMessage Msg)
= [CM_FIRST + CM_BITMAPOPEN];
virtual void CMBitmapSave(RTMessage Msg)
= [CM_FIRST + CM_BITMAPSAVE];
virtual void CMBitmapSaveAs(RTMessage Msg)
= [CM_FIRST + CM_BITMAPSAVEAS];
virtual void CMBitmapPrint(RTMessage Msg)
= [CM_FIRST + CM_BITMAPPRINT];
virtual void CMBitmapPrinterSetup(RTMessage Msg)
= [CM_FIRST + CM_BITMAPPRINTERSETUP];
virtual void CMBitmapPrinterArea(RTMessage Msg)
= [CM_FIRST + CM_BITMAPPRINTERAREA];
virtual void CMHelp(RTMessage Msg)
= [CM_FIRST + CM_HELP];
virtual void CMHelpMCI(RTMessage Msg)
= [CM_FIRST + CM_HELP_MCI];
virtual void CMHelpHelp(RTMessage Msg)
= [CM_FIRST + CM_HELP_HELP];
virtual void CMHelpAbout(RTMessage Msg)
= [CM_FIRST + CM_ABOUT];
virtual void CMControlHalt(RTMessage Msg)
= [CM_FIRST + CM_CONTROLHALT];
virtual void CMControlExecute(RTMessage Msg)
= [CM_FIRST + CM_CONTROLEXECUTE];